-------------------------------------------------------------------------------
                               BIT HACKER V1.04
 
                               september  2004
      
                              (c) by Edwin Blink
-------------------------------------------------------------------------------

-------
 INTRO
-------

I wrote this windows utility to view and hack graphics in Atari VCS2600 Roms.
But it can be used on all kinds files to manipulate bits in a graphical way.

-----------
 WHATS NEW
-----------

V1.04

Fixed Zero filelength bug
Added 8 digit hex offset support for files >64K
Added Shift Ctrl S for 'save as' shortcut
Added more keyboard Shortcuts
changed scrollmouse behavior
Added up to 6 multiple bytes in a row support.
Added mirrored view option
Added Bit Toggleling mode

----------------
 INSTRUCTIONS
----------------

Open a file from the file menu, Drag and drop a file on the  executable or use
command line to get started.

Use the view menu options to change the way bits are displayed. Note that the
invert and mirror options just inverts the display VIEW and not the bits.

Use left mouse button to set or toggle (in toggle mode) a bit. Use the right
mouse button to to reset a bit. Change multiple bits by moving the mouse while
holding down the mouse button.

The display can be up to 6 bytes wide with each byte having its own offset
pointer so wider graphics can be correctly displayed and easely hacked.
When control is at the left most byte group all byte offsets will change
simultaniously. When control is at 2nd or on. Only that byte offset is changed
and the other offsets do not change. Multiple byte mode can be set from the
menu or by pressing CTRL-W. Use TAB/ENTER or mouse click above offset to change
control to the next byte group. Hold shift down to change control to previous
byte.

There is also a playfield mode that can be used in combination with the
multi byte mode. When Checked all bytes-in-a-row are mirrored exepth the 2nd
and 5th one to display a 3 byte playfield or 6 byte asymetrical playfield.

Bit Hacker was written in Delphi 6 and packed using UPX1.25

Enjoy

-------------------
 Keyboard Controls
-------------------

Most menu uptions have a keyboard shortcut. These shortcuts
can be found in the menus. Besides those shortcuts, there the
following key combinations:

CTRL-W           steps through the available bytes-displayed-in-a-row widths
TAB/ENTER        changes control to next byte-in-a-row
TAB/ENTER+SHIFT- changes control to previous byte-in-a-row

CURSOR UP/DOWN   increase/decrease offset by one.
PAGE UP/DOWN     increase/decrease offset by one page. 
HOME             moves offset to start
END              moves offset to last page

------------------
  Mouse Controls
------------------

ANY MOUSE BUTTON at Hex offset       Changes control to next byte-in-a-row
                                     (same as TAB/ENTER)
                                     
ANY MOUSE BUTTON+SHIFT at Hex offset Changes control to previous byte-in-a-row
                                     (same as TAB/ENTER+SHIFT)
                                     
LEFT MOUSE BUTTON at a bit           sets a bit in standard mode and toggles
                                     a bit in bit toggle mode
                                     
RIGHT MOUSE BUTTON at a bit          Always resets a bit.  

MOUSE WHEEL UP/DOWN                  increase/decrease offset by four

MOUSE WHEEL UP/DOWN + SHIFT increases/decreases address offset by one

-----------------
 EXAMPLE
-----------------

Displaying 6 byte ET logo Graphics.

Open ET rom file, and Select Descent (CTRL-D)
Select 6 byte width mode from menu or press CTRL-W several times
Control must be at 1st byte group (there is no red rectangle visable)
use Goto offset option by pressing CTRL-G and enter 1748 
Press TAB/ENTER or click on offset to set control to 2nd byte group
(a red rectangle is visable around 2nd byte group)
use Goto option again and enter 1770
Press TAB/ENTER or click on offset to set control to 3rd byte group
(a red rectangle is visable around 3rd byte group)
use Goto option again and enter 1798
Press TAB/ENTER or click on offset to set control to 4th byte group
(a red rectangle is visable around 4th byte group)
use Goto option again and enter 17C0
Press TAB/ENTER or click on offset to set control to 5th byte group
(a red rectangle is visable around 5th byte group)
use Goto option again and enter 17E7
Press TAB/ENTER or click on offset to set control to 6th byte group
(a red rectangle is visable around 6th byte group)
use Goto option again and enter 1726
Press TAB/ENTER or click on offset to set control to 1st byte group again
(red rectangle will disappear)

When you can only see a part of ET then maximize window.
You can also invert the display by pressing CTRL-I to get a better look on ET
Use the mirror option (CTRL-M) to make look the other way.

-------------------------------------------------------------------------------